草庐IT

Swift、OpenGL 和 glVertexAttribPointer

全部标签

c++ - OpenGL 缓冲区的状态如何在程序运行之间保持不变?

我正在编写一个绘制到辅助缓冲区的OpenGL程序,然后辅助缓冲区的内容在被GL_RETURN-ed到后台缓冲区(本质上是合成到屏幕)之前累积到累积缓冲区。简而言之,我正在做一种运动模糊。然而奇怪的是,当我重新编译并重新运行我的程序时,我看到了先前程序运行时辅助/累积缓冲区的内容。这根本不符合逻辑。我是不是误会了什么,当程序重新启动时,OpenGL的状态不应该完全重置吗?我正在GeForceGo6150上的GentooLinuxnVidia驱动程序195.36.31中编写SDL/OpenGL程序。 最佳答案 否-您的GPU没有理由清除

c++ - 计算每个顶点的法线 OpenGL

我正在尝试计算每个顶点的法线。但是我做错了什么。当我运行代码时,我看到了:这是我的代码,注意vertex1是当前顶点之前的顶点,vertex2是当前顶点之后的顶点。for(intj=0;j0)){vertex1=vertexes[meshes[t].face[i].vertex[j+1]]-vertexes[meshes[t].face[i].vertex[j]];vertex2=vertexes[meshes[t].face[i].vertex[j-1]]-vertexes[meshes[t].face[i].vertex[j]];}elseif(j0){vertex1=vertex

c++ - 如何在 OpenGL 中设置顶点的不透明度?

以下代码片段绘制了一个灰色方block。glColor3b(50,50,50);glBegin(GL_QUADS);glVertex3f(-1.0,+1.0,0.0);//topleftglVertex3f(-1.0,-1.0,0.0);//bottomleftglVertex3f(+1.0,-1.0,0.0);//bottomrightglVertex3f(+1.0,+1.0,0.0);//toprightglEnd();在我的应用程序中,这个正方形后面有一个彩色立方体。我应该使用什么函数使正方形(并且只有这个正方形)不透明? 最佳答案

c++ - 三角扇有多少个顶点用opengl

我正在学习openGL,我遇到过使用顶点缓冲对象的三角扇。如果给定要渲染的顶点数组,openGL如何决定必须使用多少顶点来构造三角形扇形。似乎可以使用任意数量的顶点。 最佳答案 这可以很容易地通过比较三角带和三角扇来解释。三角带您可能知道,三角形带是一组共享顶点的连接三角形,这样可以更有效地使用内存。(我们节省了内存,因为我们不存储所有重复的顶点)三角带示例三角扇另一方面,我们有一个三角扇,这也是一组相连的三角形。尽管所有这些三角形都有一个共同的顶点,即中心顶点。(第一个顶点总是中心)话虽如此,我们可以拍摄上面的相同图像并更改顶点的

c++ - OpenGL 检查是否启用或禁用了某些东西

是否有类似isEnabled(GL_LIGHTING);的函数或任何检测是否启用或禁用的方法? 最佳答案 对于全局照明,怎么样:glIsEnabled(GL_LIGHTING) 关于c++-OpenGL检查是否启用或禁用了某些东西,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/14617630/

c++ - 如何在 c++/opengl 中使用 glm 常量

我只使用OpenGL编程并使用GLM(OpenGLMathematics)。我发现GLM中有一个名为“GLM_GTC_constants”的扩展,它应该提供内置常量列表。这是函数头在constants.hpp中的样子:///Returnthepiconstant.///@seegtc_constantstemplateGLM_FUNC_DECLGLM_CONSTEXPRgenTypepi();函数本身看起来像这样(constants.inl):templateGLM_FUNC_QUALIFIERGLM_CONSTEXPRgenTypepi(){returngenType(3.14159

C++/OpenGL - 旋转矩形

对于我的项目,我需要旋转一个矩形。我想,这很容易,但我在运行它时遇到了不可预测的行为......代码如下:glPushMatrix();glRotatef(30.0f,0.0f,0.0f,1.0f);glTranslatef(vec_vehicle_position_.x,vec_vehicle_position_.y,0);glEnable(GL_TEXTURE_2D);glEnable(GL_BLEND);glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);glBegin(GL_QUADS);glTexCoord2f(0.0f,0.0f

如何使用函数来调用按钮而不是按下它(swift3)

我希望能够在函数使用中调用函数启动,而无需点击动作按钮以开始。我知道要做的简单的事情就是将打印(“a”)放在使用中。但是我以此为例,因为我有一个更复杂的问题。@IBActionfuncstart(_sender:Any){print("a")}funuse(){}viewdidload(){use()}看答案创建一个IBOutlet对于您的按钮:@IBOutletweakvarbutton:UIButton!然后,简单地使用此代码触发其操作:button.sendActions(for:.touchUpInside)

Swift 4:如何使用ios11视觉框架从面部地标点创建面部图

我正在使用iOS11视觉框架实时产生面部标志性点。我能够通过面部标志性点的UibezierPath来获取面部标记点,并覆盖相机层。但是,我想获得右下图的东西。目前,我有一些看起来像左图的东西,我尝试循环浏览这些点并添加中点,但是我不知道如何从这些点中生成所有这些三角形。我将如何从左侧点从右侧生成地图?我不确定我是否可以使用所有的要点,并不是说它会有所帮助,但是我也有整个脸部边界框的要点。最后,是否有任何框架可以让我识别我需要的所有要点,例如OpenCV或其他内容,请告诉我。谢谢!这是我一直在使用的代码https://github.com/droidsonroids/visionfacedete

c++ - Qt 和 OpenGL 窗口 - 调整大小时闪烁

看起来如果我拖动调整大小足够快,窗口本身是通过子类化qwindow并在其上创建openGLcontext创建的代码:#include#include#include#include#includeclassOpenGLWindow:publicQWindow,protectedQOpenGLFunctions_3_3_Core{public:explicitOpenGLWindow();~OpenGLWindow();virtualvoidrender();boolisWindowInitialized;voidexposeEvent(QExposeEvent*event);boole